home *** CD-ROM | disk | FTP | other *** search
/ Aminet 5 / Aminet 5 - March 1995.iso / Aminet / util / time / TimeGuardian.lha / TimeGuardian_1,2a / TGinstall < prev    next >
Text File  |  1995-01-18  |  29KB  |  1,052 lines

  1. ;
  2. ; $VER: InstallTimeGuardian V1.10 (16.01.95)
  3. ;
  4. ;
  5. ; global variables....
  6. ;
  7. (set Name            "TimeGuardian")
  8. (set PName            "TGCron")
  9. (set KName            "TimeGuardian")
  10. (set RName            "TGRequest")
  11. (set CName            "TGCutLog")
  12. (set LName            "ram:TGInstall.log")
  13. (set ReadMe            "Update_to_1.2")
  14. (set LiesMich        "Update_auf_1.2")
  15. (set Version        "v1.2 (16.01.1995)")
  16. (set Muimas            "459725")
  17. (set MuimasV        "7.973")
  18. (set MuiV            "2.0")
  19. (set TempName        "TGTemp:")
  20. (set Progquelle    "bin/TGbins.lha")
  21. (set Dokquelle        "doc")
  22. (set Squelle        "s")
  23. (set ENVquelle        "env")
  24. (set Sprachen        "catalogs/")
  25. (set deCommand     "lhx")
  26. (set deFind            "LhX/lhx")
  27. (set dePath            "ram:")
  28. (set deDoc            "TGdoc.lha")
  29. (set Ende5             "leer")
  30. (set OldPathWb     "leer")
  31. (set OldPathUser    "leer")
  32. (set Doksdest        "leer")
  33. (set BootStartdefault     1)
  34. (set Konfigdefault         1)
  35. (set iNeuKonfig             1448)
  36. (set fPath                     0)
  37. (set fAltaufNeu            0)
  38. (set fTotalNeu                0)
  39. (delopts "Force")
  40. ;English und die anderen Sprachen:
  41. (if (<> @language "deutsch")
  42.     (;begin
  43.     (set loclang @language)
  44.     (set @language "english")
  45.     );end
  46. )
  47. (set ThankYou "\nThank you for supporting shareware!!!\n")
  48. (set Depacking "Decrunching file:\n\"%s\"")
  49. (set Depackerror "I could't extract the file\n\"%s\"\nfrom the archive\n\"%s\"\nThe errorcode is:\"%ld\".\n\nThe installation is aborted!")
  50. (set Dasisnupdate (cat
  51.     ("\nThere seems to be already an installation of \"%s\" "Name)
  52.     "in your directory \n\"%s\".\n\n"
  53.     ("This program will install the version \"%s\" into this directory.\n\n"Version)
  54.     "The old programs will be **overwritten**!!! Your old datafiles will stay intact. "
  55.     ("Please read the file \"%s\" before the update." ReadMe))
  56. )
  57. (set Dasisnupdatezwo (cat
  58.     ("\nThere seems to be already an installation of \"%s\" "Name)
  59.     "but I couldn't find out where!\n\n"
  60.     ("This program will install the version \"%s\" into a directory you can select.\n\n"Version)
  61.     "The old programs will possibly be **overwritten**!!! Your old datafiles will stay intact. "
  62.     ("Please read the file \"%s\" before the update." ReadMe))
  63. )
  64. (set WelcheSprache (cat "Here you have the choice, which language you want to install. "
  65.         "When you don't select a language you have to use the default language english."
  66.     )
  67. )
  68. (set KeineOnlinehilfe
  69.     (cat  "You have not installed \"amigaguide.library\"!!!\n"
  70.          "You will not be able to use the Online-help."
  71.     )
  72. )
  73. (set KeinGuide
  74.     (cat  ("You have not installed \"%s.guide\"!!!\n"Name)
  75.          "You will not be able to use the Online-help."
  76.     )
  77. )
  78. (set AbbruchKeinMUI
  79.     (cat     ("You have to install al least Mui V%s before you can install " MuiV)
  80.             ("%s %s.\n\nI will abort the installation..."Name Version)
  81.     )
  82. )
  83. (set AbbruchAltesMui
  84.     (cat     "You have installed a too old Version of Mui! "
  85.             ("You need at least \"muimaster.library\" V%s. " MuimasV)
  86.             ("You have to install at least Mui V%s.\n\nI have to abort..." MuiV)
  87.     )
  88. )
  89. (set Willkommen ("Welcome to the installation of \n%s %s\n\n" Name Version))
  90. (set Auswahl "Please select what you want to install:")
  91. (set Auswahl1 ("%s %s"Name Version))
  92. (set Auswahl2 "The documents")
  93. (set Auswahlhilfe
  94.     (cat     ("\"%s\" means that both programs, the config-program \"%s\" "Auswahl1 KName)
  95.             ("and the cron-program \"%s\" itself, will be installed.\n" PName)
  96.             ("\"%s\" means that the help-file will be installed.\n" Auswahl2)
  97.          "Later you wil be able to select the drawers, where the files will "
  98.             "be copied to.\n\n"
  99.     )
  100. )
  101. (set TX_Doks "Please select, which of the documents you whish to install:")
  102. (set TX_Doks1 "The plain ASC-File")
  103. (set TX_Doks2 "The Help-File (AmigaGuide®-Format)")
  104. (set TX_Doks3 "The TeX-.dvi File")
  105. (set TX_Doks4 "The PostScript® File")
  106. (set H_Doks
  107.     (cat     ("You should at least select \"%s\"," TX_Doks2)
  108.             "because you need this File to be able to use the Online-Help!\n\n"
  109.     )
  110. )
  111. (set KeineDoks
  112.     (cat    "\nYou did not install the documentation!!\n"
  113.     )
  114. )
  115. (set KeinProgramm
  116.     (cat    "\nYou did not install the programs!!\n"
  117.     )
  118. )
  119. (set NichtsInstalliert
  120.     (cat    "\n\nYou didn't select something, I haven't installed anything!!!"
  121.     )
  122. )
  123. (set NichtWBgeaendert
  124.     (cat    "\nYou have to add\n"
  125.             "\"%s\n\""
  126.             "to your \"user-startup\"!!!\n"
  127.     )
  128. )
  129. (set KeinBootStart
  130.     (cat    ("\nThe installation is not completely finished. \"%s\" "PName)
  131.             "is not started when booting. You have to start it manual.\n"
  132.     )
  133. )
  134. (set WederWBnochCLI
  135.     (cat    ("I can't start \"%s\" while booting. "PName)
  136.             "You neither have a \"user-startup\"-File nor a \"WBStartup\""
  137.             "-drawer on your \"Sys:\" partition. "
  138.             "I will abort the installation..."
  139.     )
  140. )
  141. (set NochKonfigurieren
  142.     (cat    ("\nYou have to start the configurationprogram \"%s\" " KName)
  143.             "in your drawer (or partition) \"%s\" "
  144.             "and then save your personal configuration!"
  145.     )
  146. )
  147. (set NochKonfigprompt "\n\nPress \"Yes\"to configure program.")
  148. (set SollKonfighilfe
  149.     (cat    ("When you press \"Yes\" the configurationprogram \"%s\" "KName)
  150.             "will be started automatically. You just have to save your "
  151.             "selected config to complete the installation.\n\n"
  152.             ("When you select \"No\" you have to start \"%s\" "KName)
  153.             "before you reset your computer the next time and save "
  154.             "the configuration, too."
  155.     )
  156. )
  157. (set DoksZiel "In which directory shall I install the \".asc\" and \".guide\" file?\n Don't use spaces in this path!!!")
  158. (set DviZiel "In which directory shall I install the TeX-File?")
  159. (set PSZiel "In which directory shall I install the PostScript-File?")
  160. (set DoksIn "The documents can be found in your \"%s\" drawer (or partition).\n")
  161. (set Bootprompt
  162.     (cat    ("\n\n\nShall %s be started when booting?\n" PName)
  163.             "For further information press \"Help...\""
  164.     )
  165. )
  166. (set Boothelp
  167.     (cat    ("\nWhen you select \"Yes\" \"%s\" will be started every time " Name)
  168.             "your Computer is booting.\n\n"
  169.             ("When you select \"No\" you should start \"%s\" " Name)
  170.             "manually every time you need a logfile. "
  171.     )
  172. )
  173. (set Ziel ("In which directory shall I install %s?\nWhen you want a drawer for the package you have to make one. This will not be done automatically!" Name))
  174. (set Kopiere "copying Files...")
  175. (set WBStart (cat ("\n\n\nShall %s be started when booting?\n" Name)
  176.              "For further information press \"Help...\""
  177.              )
  178. )
  179. (set WBoCLIprompt ("Start %s from WB or CLI?"Name))
  180. (set WBoCLIhilfe
  181.     (cat    ("You have to select here whether you want %s " Name)
  182.             "to be started from Workbench (WBStartup-drawer) "
  183.             "or CLI (user-startup) while your Computer is booting.\n\n"
  184.     )
  185. )
  186. (set WBoCLI1 "From CLI (user-startup)")
  187. (set WBoCLI2 "From WB (WBStartup)")
  188. (set AendereCLIprompt
  189.     (cat    "I will change your \"user-startup\" when you press \"Continue\".\n\n"
  190.             "For further information press \"Help...\"."
  191.     )
  192. )
  193. (set AendereCLIhilfe
  194.     (cat    "\nWhen you press \"Skip this part\" the installation will be "
  195.             "incomplete. You have to add\n"
  196.             "\"%s\n\""
  197.             "to your \"user-startup\"!!!"
  198.     )
  199. )
  200. (set MacheVerz "Creeating drawer %s")
  201. ;German
  202. (if (= @language "deutsch")
  203. (;begin
  204. (set loclang @language)
  205. (set Thankyou "\nVielen Dank für die Registrierung!!!\n")
  206. (set Depacking "Entpacke Datei:\n\"%s\"")
  207. (set Depackerror "Das Entpacken der Datei\n\"%s\"\naus dem Archiv\n\"%s\"\nlieferte den Fehler \"%ld\".\n\nDie Installation wird abgebrochen!")
  208. (set Dasisnupdate (cat
  209.     ("\nSie haben anscheinend schon eine ältere Version von \"%s\" "Name)
  210.     "im Verzeichnis \n\"%s\" installiert.\n\n"
  211.     ("Dieses Programm installiert die Version \"%s\" in dieses Verzeichnis.\n\n"Version)
  212.     "Die nicht mehr benötigten alten Programme werden dabei **überschrieben**!!! Ihre alten Daten bleiben erhalten. "
  213.     ("Lesen Sie vor der Installation bitte noch die Datei \"%s\"." LiesMich))
  214. )
  215. (set Dasisnupdatezwo (cat
  216.     ("\nSie haben anscheinend schon eine ältere Version von \"%s\" "Name)
  217.     "installiert, aber ich konnte nicht feststellen wo!\n\n"
  218.     ("Dieses Programm installiert die Version \"%s\" in ein wählbares Verzeichnis.\n\n"Version)
  219.     "Die nicht mehr benötigten alten Programme werden dabei möglicherweise **überschrieben**!!! Ihre alten Daten bleiben erhalten. "
  220.     ("Lesen Sie vor der Installation bitte noch die Datei \"%s\"." LiesMich))
  221. )
  222. (set WelcheSprache (cat "Hier können Sie wählen, welche Sprache(n) Sie installieren wollen. "
  223.         "Wenn Sie keine Sprache auswählen, wird die Voreinstellung Englisch benutzt."
  224.     )
  225. )
  226. (set KeineOnlinehilfe
  227.     (cat  "Sie haben die  \"amigaguide.library\" nicht installiert!!!\n"
  228.          "Sie werden die Online-Hilfe nicht benuzten können."
  229.     )
  230. )
  231. (set KeinGuide
  232.     (cat  ("Sie haben die Datei \"%s.guide\" nicht installiert!!!\n"Name)
  233.          "Sie werden die Online-Hilfe nicht benuzten können."
  234.     )
  235. )
  236. (set AbbruchKeinMUI
  237.     (cat     ("Sie müssen mindestens Mui V%s installieren, bevor Sie %s %s " MuiV Name Version)
  238.             "installieren können.\n\nIch werde abbrechen..."
  239.     )
  240. )
  241. (set AbbruchAltesMui
  242.     (cat     "Sie haben eine zu alte Version von Mui installiert! "
  243.             ("Sie müssen mindestens die \"muimaster.library\" V%s " MuimasV)
  244.             ("installiert haben (Mui V%s).\n\nIch werde abbrechen..." MuiV)
  245.     )
  246. )
  247. (set MyWelcome 
  248.     (cat    "Willkommen zum Installationsprogramm für\n"
  249.             ("\"%s\". Bitte wählen Sie, wie die\n" Name)
  250.             "Installation durchgeführt werden soll, je nach Ihrem\n"
  251.             "Wissensstand über den Amiga.\n\n\nWahl des Installationsmodus"
  252.     )
  253. )
  254. (set myhelp
  255.     (cat
  256.         "Sie müssen vor dem Weitermachen eine \"Benutzerkategorie\" im Installationsprogramm wählen, und zwar eine der folgenden:\n"
  257.         "EINSTEIGER: Hierbei läuft die Installation komplett automatisch ab, und Sie werden um keinerlei weitere Entscheidungen gebeten. Dies ist jedoch nur für solche Amigas zu empfehlen, die nicht schon stark individuell konfiguriert wurden, da manche Annahmen, die das Programm macht, nur für "standardmäßige" Amigas gelten. Trotzdem können Aufforderungen kommen, Disketten einzulegen oder andere Maßnahmen zu ergreifen.\n"
  258.         "GEÜBTER BENUTZER: Wichtige Entscheidungen treffen Sie hierbei selbst, z. B. wo eine Anwendung installiert werden soll, doch Sie werden nicht mit den weniger wichtigen Details wie dem Kopieren von Dateien und Anlegen von Unterverzeichnissen usw. behelligt.\n"
  259.         "EXPERTE: Hierbei werden Sie bei jedem Schritt des Installationsprozesses um Bestätigung gebeten (obwohl manchmal mehrere Schritte in einer einzigen Bestätigung zusammengefaßt werden). Zusätzlich haben Sie mehr Einfluß darauf, wo einzelne Objekte genau installiert werden.\n"
  260.         "Zusätzlich finden Sie mehrere Symbole am unteren Rand:\n"
  261.         "\"Weiter mit Installation\" zeigt an, daß Sie eine Benutzerkategorie gewählt haben und die Installation jetzt weitergehen soll.\n"
  262.         "\"Installation abbrechen\" bedeutet, daß Sie Ihre Meinung geändert haben und die Anwendung doch nicht installieren wollen.\n"
  263.         "\"Hilfe ...\" zeigt diesen Text an."
  264.     )
  265. )
  266. (set Willkommen ("Willkommen zur Installation von\n%s %s\n\n" Name Version))
  267. (set Auswahl "Wählen Sie bitte aus, was Sie installieren möchten:")
  268. (set Auswahl1 ("%s %s" Name Version))
  269. (set Auswahl2 "Die Dokumentation")
  270. (set Auswahlhilfe
  271.     (cat     ("\"%s\" bedeutet, daß das Konfigurationsprogramm \"%s\" " Auswahl1 KName)
  272.             ("und das eigentliche Cron-Programm \"%s\" installiert werden.\n" PName)
  273.             ("\"%s\" bedeutet, daß die Help-Datei im Amiga-Guide®-Format "Auswahl2)
  274.             "installiert wird.\n"
  275.             "Sie können später jeweils auswählen, wohin die Files kopiert werden sollen.\n\n"
  276.     )
  277. )
  278. (set TX_Doks "Wählen Sie bitte, welche der Dateien der Dokumentation Sie installieren möchten:")
  279. (set TX_Doks1 "Die reine Text- Datei (ASC-Format)")
  280. (set TX_Doks2 "Die Hilfe Datei (AmigaGuide®-Format)")
  281. (set TX_Doks3 "Die TeX-.dvi Datei")
  282. (set TX_Doks4 "Die PostScript® Datei")
  283. (set H_Doks
  284.     (cat     ("Sie sollten mindestens\"%s\"," TX_Doks2)
  285.             "auswählen, da Sie diese Datei benötigen, um die Online-Hilfe benutzen zu können!\n\n"
  286.     )
  287. )
  288. (set KeineDoks
  289.     (cat    "\nSie haben die Dokumentation nicht installiert!!\n"
  290.     )
  291. )
  292. (set KeinProgramm
  293.     (cat    "\nSie haben die Programme nicht installiert!!\n"
  294.     )
  295. )
  296. (set NichtsInstalliert
  297.     (cat    "\n\nSie haben nichts ausgewählt, es wurde nichts installiert!!!"
  298.     )
  299. )
  300. (set NichtWBgeaendert
  301.     (cat    "\nSie müssen noch\n"
  302.             "\"%s\"\n"
  303.             "in Ihrer \"user-startup\" ergänzen!!!\n"
  304.  
  305.     )
  306. )
  307. (set KeinBootStart
  308.     (cat    ("\nDie Installation ist noch nicht fertig. \"%s\" "PName)
  309.             "wird nicht beim booten gestartet. Sie müssen es von Hand starten.\n"
  310.     )
  311. )
  312. (set WederWBnochCLI
  313.     (cat    ("Ich kann \"%s\" nicht beim booten starten "PName)
  314.             "da Sie auf Ihrer \"Sys:\" Partition weder ein "
  315.             "\"user-startup\"-File noch ein \"WBStartup\"-Verzeichnis "
  316.             "installiert haben. Ich werde abbrechen..."
  317.     )
  318. )
  319. (set NochKonfigurieren
  320.     (cat    ("\nSie müssen jetzt noch das Konfigurationsprogramm \"%s\" "KName)
  321.             "im Verzeichnis (oder Partition) \"%s\" "
  322.             "starten und dann Ihre persönliche Konfiguration speichern!"
  323.     )
  324. )
  325. (set NochKonfigprompt "\n\nDrücken Sie \"Ja\" um zum konfigurieren.")
  326. (set SollKonfighilfe
  327.     (cat    "Wenn Sie \"Ja\" drücken, wird automatisch das Konfigurationsprogramm "
  328.             ("\"%s\" gestarted. Sie müssen dann nur Ihre eingestellte "KName)
  329.             "Konfiguration speichern.\n\n"
  330.             "Wenn Sie \"Nein\" wählen, müssen Sie vor dem nächsten booten "
  331.             ("\"%s\" starten und ebenfalls die Konfiguration speichern."KName)
  332.     )
  333. )
  334. (set DoksZiel "In welches Verzeichnis soll ich die \".asc\" und \".guide\" Dateien installieren?\nBenutzen Sie keine Leerzeichen in diesem Pfad!!!")
  335. (set DviZiel "In welches Verzeichnis soll ich die dvi-Datei installieren?")
  336. (set PSZiel "In welches Verzeichnis soll ich die PostScript-Datei installieren?")
  337. (set DoksIn "Sie finden die Dokumentation in der Schublade (oder Partition) \"%s\"\n")
  338. (set Bootprompt
  339.     (cat    ("\n\n\nSoll %s bei jedem booten gestartet werden?\n" PName)
  340.             "Für nähere Informationen drücken Sie \"Hilfe ...\""
  341.     )
  342. )
  343. (set Boothelp
  344.     (cat    ("\nWenn Sie \"Ja\" anwählen, wird \"%s\" " Name)
  345.             "jedesmal gestartet wenn Ihr Computer bootet.\n\n"
  346.             ("Wenn Sie \"Nein\" auswählen sollten sie \"%s\" " Name)
  347.             "jedesmal von Hand starten, wenn Sie ein Logfile benötigen!"
  348.     )
  349. )
  350. (set Ziel ("In welches Verzeichnis soll ich %s installieren?\nEs wird keine Schublade erzeugt, das müssen Sie machen, falls Sie es wünschen!" Name))
  351. (set Kopiere "Kopiere Files...")
  352. (set WBStart (cat ("\n\n\nSoll %s bei jedem booten gestartet werden?\n" Name)
  353.              "Für nähere Informationen drücken Sie \"Hilfe ...\""
  354.              )
  355. )
  356. (set WBoCLIprompt ("%s von WB oder CLI starten?"Name))
  357. (set WBoCLIhilfe
  358.     (cat    ("Sie müssen hier auswählen, ob sie %s "Name)
  359.             "beim booten "
  360.             "von der Workbench (WBstartup-Verzeichnis) "
  361.             "oder vom CLI (user-startup) starten lassen wollen.\n\n"
  362.     )
  363. )
  364. (set WBoCLI1 "Vom CLI (user-startup)")
  365. (set WBoCLI2 "Von der WB (WBStartup)")
  366. (set AendereCLIprompt
  367.     (cat    "Ich werde Ihre \"user-startup\" ändern wenn Sie \"Weiter\"drücken.\n\n"
  368.             "Für mehr Information drücken Sie \"Hilfe...\"."
  369.     )
  370. )
  371. (set AendereCLIhilfe
  372.     (cat    "\nWenn Sie \"Diesen Teil Überspringen\" drücken, wird die Installation "
  373.             "unvollständig sein. Sie müssen dann\n"
  374.             "\"%s\"\n"
  375.             "in Ihrer \"user-startup\" ergänzen!!!"
  376.     )
  377. )
  378. (set MacheVerz "Erstelle Schublade %s")
  379. ));endif
  380. ;Beginn Unterprogramme
  381. (procedure Depack
  382.     (;begproc
  383.     (working (Depacking dePattern))
  384.     (if (= (exists (tackon deDest dePattern)) 1)
  385.         (
  386.         (protect (tackon deDest dePattern) "+rwed")
  387.         (delete (tackon deDest dePattern))
  388.         )
  389.     )
  390.     (set deDest (tackon deDest "Emil"))
  391.     (set deDest (pathonly deDest))
  392.     (if (= (substr deDest (-(strlen deDest)1) (strlen deDest)) ":")
  393.         (;begin ':'
  394.             (set deRC
  395.                 (run ("\"%s\" e \"%s\" \"%s\" \"%s\"" deCommand deSource dePattern deDest))
  396.             )
  397.         );end
  398.         (;begelse '/'
  399.             (set deRC
  400.                 (run ("\"%s\" e \"%s\" \"%s\" \"%s/\"" deCommand deSource dePattern deDest))
  401.             )
  402.         );endelse
  403.     );endif
  404.     (if(<> RC 0)
  405.         (abort (Depackerror dePattern deSource deRC))
  406.     );endif
  407.     );endproc
  408. )
  409. (procedure MyStart
  410.     (;begproc
  411.     (set myuser
  412.         (askchoice
  413.             (prompt MyWelcome)
  414.             (help myhelp)
  415.             (choices  "Einsteiger - Alles automatisch"
  416.                 "Geübter Benutzer - Teilweise Kontrolle"
  417.                 "Experte - Alles bestätigen")
  418.          (default $2)
  419.         )
  420.     )
  421.  
  422.     );endproc
  423. )
  424. (procedure GetPathUser
  425.     (;begproc
  426.         (run ("echo NOLINE \"`c:search s:user-startup \"#?%s#?\" pattern nonum`\" > env:fTemp" PName))
  427.       (if (=(exists "env:fTemp") 1)
  428.             (;begin
  429.             (set Temp (getenv "fTemp"))
  430.             (set Temp (pathonly(substr Temp 19 (strlen Temp))))
  431.                     (if (= (exists Temp) 2)
  432.                         (set OldPathUser Temp)
  433.                     );endif
  434.             (delete "env:ftemp")
  435.             );end
  436.         );endif
  437.     );endproc
  438. )
  439. (procedure GetPathWb
  440.     (;begproc
  441.         (run ("echo NOLINE \"`c:search sys:wbstartup/%s.info \"#?%s#?\" pattern nonum`\" > env:temppath1" PName PName))
  442.       (if (= (exists "env:temppath1") 1)
  443.             (;begin
  444.                 (set Temp1(getenv "temppath1"))
  445.                 (set Temp1 (pathonly(substr Temp1 1 (strlen Temp1))))
  446.                 (if (= (exists Temp1) 2)
  447.                     (set OldPathWb Temp1)
  448.                 );endif
  449.                 (delete "env:temppath1")
  450.             );end
  451.         );endif
  452.     );endproc
  453. )
  454. (procedure Woises
  455.     (;begproc
  456.     (if (= (exists "s:user-startup") 1)
  457.         (;begin
  458.         (GetPathUser)
  459.         (if (= OldPathUser "leer")
  460.             (set fPath 0);begin;end
  461.             (;begelse
  462.                 (set @default-dest OldPathUser)
  463.                 (set fPath 1)
  464.             );endelse
  465.         );endif
  466.         );end
  467.     );endif
  468.     (if (= (exists ("sys:wbstartup/%s.info" PName)) 1)
  469.         (;begin
  470.         (GetPathWb)
  471.         (if (= OldPathWb "leer")
  472.             (set fPath 0);begin;end
  473.             (;begelse
  474.                 (set @default-dest OldPathWb)
  475.                 (set fPath 1)
  476.             );endelse
  477.         );endif
  478.         );end
  479.     );endif
  480.     );endproc
  481. )
  482. (procedure Update
  483.     (;begproc
  484.     (set iAltKonfig (getsize ("envarc:%s.config" Name)))
  485.     (if (< iAltKonfig iNeuKonfig)
  486.         (;beg ;Ein Update
  487.              (set fAltaufNeu 1)
  488.             (run ("echo > env:%s.com stop" Name))
  489.             (Woises)
  490.         );end
  491.         (;begelse
  492.             (set Pfad (getenv ("%s.path" Name)))
  493.             (set Pfad (substr Pfad 0 (-(strlen Pfad)1)))
  494.             (set Pfad (tackon Pfad "Emil"))
  495.             (set Pfad (pathonly Pfad))
  496.             (set @default-dest Pfad)
  497.             (set fPath 1)
  498.         );endelse
  499.     );endif
  500.     (user 2)
  501.     (if (= fPath 1)
  502.         (set updatemessage ("%s"(Dasisnupdate @default-dest)));begin;end
  503.         (set updatemessage Dasisnupdatezwo);begelse;endelse
  504.     );endif
  505.     (message updatemessage)
  506.     (user myuser)
  507.     );endproc
  508. )
  509. (procedure InstalliereGuide
  510.     (;begproc
  511.         (if (=(exists "libs:amigaguide.library")1)
  512.             (;beg
  513.                 (if (= doksdest "leer")
  514.                     (set doksdest @default-dest)
  515.                 );endif
  516.                 (if (= (exists "envarc:AmigaGuide") 0)
  517.                    ( ;beg
  518.                     (makedir "ENVARC:AmigaGuide"
  519.                         (prompt MacheVerz "ENVARC:AmigaGuide")
  520.                         (help @makedir-help)
  521.                     )
  522.                     (makedir "ENV:AmigaGuide"
  523.                         (prompt MacheVerz "ENV:AmigaGuide")
  524.                         (help @makedir-help)
  525.                     )
  526.                     );end
  527.                 );endif
  528.                 (if (=(exists "ENVARC:AmigaGuide/path")2)
  529.                     (;begin
  530.                         (run ("echo > env:AmigaGuide/path %s" Doksdest))
  531.                         (run ("echo > envarc:AmigaGuide/path %s" Doksdest))
  532.                     );end
  533.                     (;begelse
  534.                         (if (= (run ("c:search Envarc:AmigaGuide/path %s" Doksdest)) 5)
  535.                             (;begin
  536.                                 (run ("echo >> env:AmigaGuide/path %s" Doksdest))
  537.                                 (run ("echo >> envarc:AmigaGuide/path %s" Doksdest))
  538.                             );end
  539.                         );endif
  540.                     );endelse
  541.                 );endif
  542.                 (set deSource (tackon TempName(tackon (tackon Dokquelle @language) deDoc)))
  543.                 (set deDest Doksdest )
  544.                 (set dePattern ("%s.guide"Name))
  545.                 (Depack)
  546.                 (set dePattern ("%s.guide.info"Name))
  547.                 (Depack)
  548.             );end
  549.             (;begelse
  550.                 (message KeineOnlinehilfe)
  551.             );endelse
  552.         );endif
  553.     );endproc
  554. )
  555. (procedure InstalliereDoks
  556.     (;begproc
  557.     (set Doksdest
  558.         (askdir
  559.             (prompt DoksZiel)
  560.             (help @askdir-help)
  561.             (if (In Wahl 0)
  562.                 (default (tackon @default-dest "docs"));beg;end
  563.                 (;begelse
  564.                     (if (= (exists "Sys:Tools") 2)
  565.                             (default "Sys:Tools/docs");begin;end
  566.                             (default (tackon @default-dest docs));begelse;endelse
  567.                     );endif
  568.                 );endelse
  569.             );endif
  570.             (newpath)
  571.         )
  572.     )
  573.     (if (= (exists Doksdest) 0)
  574.         (makedir Doksdest
  575.             (prompt (MacheVerz Doksdest))
  576.             (help @makedir-help)
  577.             (infos)
  578.         )
  579.     );endif
  580.     (set deSource (tackon TempName(tackon (tackon Dokquelle @language)deDoc)))
  581.     (set deDest Doksdest )
  582.     (set dePattern ("%s.asc"Name))
  583.     (Depack)
  584.    (set Ende1 ("%s" (DoksIn Doksdest)))
  585.     );endproc
  586. )
  587. (procedure InstalliereDvi
  588.     (;begproc
  589.     (set Dvidest
  590.         (askdir
  591.             (prompt DviZiel)
  592.             (help @askdir-help)
  593.             (if (<> "" (getassign "TEX"))
  594.                     (default "TeX:output");begin;end
  595.                     (default (tackon @default-dest "docs"));begelse;endelse
  596.             );endif
  597.             (newpath)
  598.         )
  599.     )
  600.     (if (= (exists Dvidest) 0)
  601.         (makedir Dvidest
  602.             (prompt (MacheVerz Dvidest))
  603.             (help @makedir-help)
  604.             (infos)
  605.         )
  606.     );endif
  607.     (set deSource (tackon TempName(tackon (tackon Dokquelle @language) deDoc)))
  608.     (set deDest Dvidest)
  609.     (set dePattern ("%s.dvi"Name))
  610.     (Depack)
  611.     );endproc
  612. )
  613. (procedure InstallierePS
  614.     (;begproc
  615.     (set PSdest
  616.         (askdir
  617.             (prompt PSZiel)
  618.             (help @askdir-help)
  619.             (default (tackon @default-dest "docs"));begelse;endelse
  620.             (newpath)
  621.         )
  622.     )
  623.     (if (= (exists PSdest) 0)
  624.         (makedir PSdest
  625.             (prompt (MacheVerz PSdest))
  626.             (help @makedir-help)
  627.             (infos)
  628.         )
  629.     );endif
  630.     (set deSource (tackon TempName(tackon (tackon Dokquelle @language) deDoc)))
  631.     (set deDest PSdest )
  632.     (set dePattern ("%s.ps"Name))
  633.     (Depack)
  634.     );endproc
  635. )
  636. (procedure FrageWboCLI
  637.     (;begproc
  638.     (set WBoCLI
  639.         (askchoice
  640.             (prompt WBoCLIprompt)
  641.             (help WBoCLIhilfe)
  642.             (choices WBoCLI1 WBoCLI2)
  643.          (default $1)
  644.         )
  645.     )
  646.     );endproc
  647. )
  648. (procedure SetzeWBoCLI
  649.     (;begproc
  650.     (if (= (exists "Sys:WBStartup") 0)
  651.         (set WB 0);begin;end
  652.         (set WB 1);begelse;endelse
  653.     );endif
  654.     (if (= (exists "s:user-startup") 0)
  655.         (set CLI 0);begin;end
  656.         (set CLI 1);begelse;endelse
  657.     );endif
  658.     (if (= CLI 1)
  659.       (;begin
  660.             (if (= WB 1)
  661.                 (FrageWBoCLI);begin;end
  662.                 (set WBoCLI 0);begelse;endelse
  663.             );endif
  664.         );end
  665.         (;begelse
  666.             (if (= WB 1)
  667.                 (set WBoCLI 1);begin;end
  668.                 (abort WederWBnochCLI);begelse;endelse
  669.             );endif
  670.         );endelse
  671.     );endif
  672.    );endproc
  673. )
  674. (procedure FrageWohin
  675.     (;begproc
  676.     (user 2)
  677.     (set Wosollshin
  678.         (askdir
  679.             (prompt Ziel)
  680.             (help @askdir-help)
  681.             (default
  682.                 (if (= fPath 1)
  683.                     (@default-dest);begin;end
  684.                     (;begelse
  685.                     (if (= (exists "Sys:Tools") 2)
  686.                         ("Sys:Tools");begin;end
  687.                         (@default-dest);begelse;endelse
  688.                     );endif
  689.                     );endelse
  690.                 )
  691.             )
  692.         )
  693.     )
  694.     (user myuser)
  695.     (set @default-dest Wosollshin)
  696.     (set Wosollshin (tackon Wosollshin "Emil"))
  697.     (set Wosollshin (pathonly Wosollshin))
  698.     );endproc
  699. )
  700. (procedure KopiereProg
  701.     (;begproc
  702.     (set n 0)
  703.     (set deSource (tackon TempName Progquelle))
  704.     (while (set dePattern (select n
  705.       KName
  706.         ("%s.info" KName)
  707.         PName
  708.         ("%s.info" PName)
  709.         RName
  710.         CName
  711.       ""))
  712.         (set deDest @default-dest)
  713.         (Depack)
  714.         (set n (+ n 1))
  715.     )
  716.     (if (= (exists (tackon Squelle ("%s.key" Name))) 1)
  717.         (;begin
  718.             (if (= (exists "ENV:KEYPATH") 1)
  719.                 (;begin
  720.                     (set Keydest (getenv "KEYPATH"))
  721.                     (if     (= (substr Keydest (-(strlen Keydest)1) (strlen Keydest)) "\n")
  722.                         (set Keydest (substr Keydest 0 (-(strlen Keydest)1)))
  723.                     );endif
  724.                 );end
  725.                 (set Keydest "S:");begelse;endelse
  726.             );endif
  727.             (copyfiles
  728.                 (prompt Kopiere)
  729.                 (source Squelle)
  730.                 (dest Keydest)
  731.                 (pattern ("%s.key" Name))
  732.                 (help @copyfiles-help)
  733.             )
  734.         );end
  735.     );endif
  736.     (if (= (OR (= fAltaufNeu 1)(= fTotalNeu 1)) 1)
  737.         (;beg
  738.         (set Ende5 (NochKonfigurieren @default-dest))
  739.         (if (= fTotalNeu 1)
  740.           (;begin
  741.                 (copyfiles
  742.                     (prompt Kopiere)
  743.                     (source ENVquelle)
  744.                     (dest "ENVARC:")
  745.                     (pattern "#?.config")
  746.                     (help @copyfiles-help)
  747.                 )
  748.                 (copyfiles
  749.                     (prompt Kopiere)
  750.                     (source ENVquelle)
  751.                     (dest "ENV:")
  752.                     (pattern "#?.config")
  753.                     (help @copyfiles-help)
  754.                 )
  755.             );end
  756.         );endif
  757.         );end
  758.     );endif
  759.     (if (In Wahl 1)
  760.         (set Doksdest Doksdest)
  761.         (;begelse
  762.          (set Doksdest @default-dest)
  763.             (InstalliereGuide)
  764.         );endelse
  765.     );endif
  766.     (if (= (exists "Sys:Prefs") 2)
  767.         (;begin
  768.             (set deSource (tackon TempName Progquelle))
  769.             (set deDest "Sys:Prefs/")
  770.             (set dePattern ("%s.info"KName))
  771.             (Depack)
  772.             (tooltype
  773.                 (dest ("Sys:Prefs/%s"KName))
  774.                 (noposition)
  775.                 (setdefaulttool (tackon @default-dest ("%s"KName)))
  776.             )
  777.       );end
  778.     );endif
  779.     (if (= (substr Wosollshin (-(strlen Wosollshin)1) (strlen Wosollshin)) ":")
  780.         (;begin
  781.             (run ("echo > env:%s.path %s" KName Wosollshin ))
  782.             (run ("echo > envarc:%s.path %s" KName Wosollshin ))
  783.         );end
  784.         (;begelse
  785.             (run ("echo > env:%s.path %s/" KName Wosollshin ))
  786.             (run ("echo > envarc:%s.path %s/" KName Wosollshin ))
  787.         );endelse
  788.     );endif
  789.     );endproc
  790. )
  791. (procedure AendereWB
  792.     (;begproc
  793.    (if (= WBoCLI 1)
  794.         (;begin
  795.             (set deSource (tackon TempName Progquelle))
  796.             (set deDest "Sys:WBStartup/")
  797.             (set dePattern ("%s.info"PName))
  798.             (Depack)
  799.             (tooltype
  800.                 (dest ("Sys:WBStartup/%s"PName))
  801.                 (noposition)
  802.                 (setdefaulttool (tackon @default-dest ("%s"PName)))
  803.             )
  804.         );end
  805.     );endif
  806.     );endproc
  807. )
  808. (procedure AendereCLI
  809.     (;begproc
  810.     (if (= WBoCLI 0)
  811.        (;begin
  812.             (set Alt (getsize "s:user-startup"))
  813.             (set StartPfad (tackon @default-dest PName))
  814.             (set UserStart ("   run >nil: <nil: %s -i"StartPfad))
  815.             (startup
  816.                 ("%s %s" Name Version)
  817.                 (prompt AendereCLIprompt)
  818.                 (help @startup-help (AendereCLIhilfe Userstart))
  819.                 (command Userstart)
  820.             )
  821.             (set Neu (getsize "s:user-startup"))
  822.             (if (= Alt Neu)
  823.                 (;begin
  824.             (if (NOT @pretend)
  825.                     (set Ende4 (NichtWBgeaendert Userstart));begin;end
  826.                 );endif
  827.                 );end
  828.             );endif
  829.         );end
  830.    );endif
  831.     );endproc
  832. )
  833. (procedure KopiereKataloge
  834.     (;begproc
  835.     (copyfiles
  836.         (prompt Kopiere)
  837.         (source (tackon Sprachen Sprache))
  838.         (dest ("Locale:catalogs/%s"Sprache))
  839.         (pattern ("%s.catalog"Name))
  840.         (help @copyfiles-help)
  841.     )
  842.     );endproc
  843. )
  844. (procedure KopiereLocale
  845.     (;begproc
  846.         (if (<> "" (getassign "Locale"))
  847.         (;begin
  848.             (if (= loclang "deutsch")
  849.                 (set def $1);begin;end
  850.                 (;begin
  851.                     (if (= loclang "nederlands")(set def $2)(set def $0))
  852.                 );end
  853.             );endif
  854.             (set NSprache (askoptions
  855.                     (prompt WelcheSprache)
  856.                     (choices
  857.                         "Deutsch"
  858. ;                        "Nederlands"
  859.                     )
  860.                     (default def)
  861.                (help Localehelp)
  862.                 )
  863.             )
  864.             (set n 0)
  865.             (while
  866.                 (set Sprache
  867.                     (select n
  868.                         "deutsch"
  869.                         "nederlands"
  870.                         ""
  871.                     )
  872.                 )
  873.                 (;begin
  874.                 (if (IN NSprache n)
  875.                     (;begin
  876.                     (if (= (exists "Locale:catalogs") 2)
  877.                         (;begin
  878.                             (if (= (exists ("Locale:catalogs/%s"Sprache)) 2)
  879.                                 (KopiereKataloge);begin;end
  880.                                 (;begin
  881.                                     (makedir ("Locale:catalogs/%s"Sprache))
  882.                                     (KopiereKataloge)
  883.                                 );end
  884.                             );endif
  885.                         );end
  886.                         (;begelse
  887.                             (makedir "Locale:catalogs")
  888.                             (makedir ("Locale:catalogs/%s"Sprache))
  889.                             (KopiereKataloge)
  890.                         );endelse
  891.                     );endif
  892.                     );end
  893.                 );endif
  894.                 (set n (+ n 1))
  895.                 );end
  896.             );endwhile
  897.       );end
  898.         );endif
  899.     );endproc
  900. )
  901. (procedure InstalliereProgramme
  902.     (;begproc
  903.     (set BootStart    (askbool    (prompt Bootprompt)
  904.                                     (help Boothelp)
  905.                                     (default BootStartdefault)))
  906.     (if (= BootStart 1)
  907.         (;begin
  908.           (SetzeWBoCLI)
  909.         );end
  910.         (;begelse
  911.           (set WBoCLI 2)
  912.             (set Ende3 KeinBootStart)
  913.         );endelse
  914.     );endif
  915.     (FrageWohin)
  916.     (KopiereProg)
  917.     (complete 40)
  918.     (AendereWB)
  919.     (AendereCLI)
  920.     (complete 60)
  921.     (KopiereLocale)
  922.    (complete 80)
  923.     );endproc
  924. )
  925. (procedure SollKonfigurieren
  926.     (;begproc
  927.     (set Konfig
  928.         (askbool    (prompt Ende5 NochKonfigprompt)
  929.                     (help SollKonfighilfe)
  930.                     (default Konfigdefault)
  931.         )
  932.     )
  933.    (if    (= Konfig 1)
  934.         (;begin
  935.             (run "c:avail flush")
  936.             (run (tackon @default-dest KName))
  937.             (set iAltKonfig (getsize ("envarc:%s.config" Name)))
  938.             (if (AND (= BootStart 1) (= iAltKonfig iNeuKonfig))
  939.                 (run ("run >nil: <nil: %s -i"(tackon @default-dest PName)))
  940.             )
  941.         );end
  942.         (message Ende5);begelse;endelse
  943.     );endif
  944.     );endproc
  945. )
  946. (procedure SetDoks
  947.     (;begproc
  948.     (set Doks    (askoptions    (prompt TX_Doks)
  949.                     (help H_Doks @askoptions-help)
  950.                     (choices TX_Doks1
  951.                                 TX_Doks2
  952.                                 TX_Doks3
  953.                                 TX_Doks4
  954.                     )
  955.                     (default $3)
  956.                 )
  957.     )
  958.     );endproc
  959. )
  960. (procedure Ende
  961.     (;begproc
  962.    (if (<> Ende5 "leer")
  963.         (SollKonfigurieren);begin;end
  964.     );endif
  965.     (complete 100)
  966.     (exit ("%s %s %s %s" Ende1 Ende2 Ende3 Ende4))
  967.     );endproc
  968. )
  969. ;Ende Unterprogramme
  970. (if (= @language "deutsch")
  971.     (;begin
  972.     (MyStart)
  973.     (if (<> myuser 0)
  974.         (welcome Willkommen);begin;end
  975.     );endif
  976.     (user myuser)
  977.     );end
  978.     (;begelse
  979.     (welcome Willkommen)
  980.     (set myuser @user-level)
  981.     );endelse
  982. );endif
  983. (complete 0)
  984. (user 0)
  985. (copyfiles (prompt "")(help"")(source deFind) (dest dePath)(nogauge))
  986. (user myuser)
  987. (set deCommand (tackon dePath deCommand))
  988. ;(makeassign TempName "\"\"")
  989. (run ("assign %s \"\"" TempName))
  990. (if(<> (exists "LIBS:muimaster.library") 1)
  991.     (abort AbbruchKeinMUI);begin;end
  992.     (;begelse
  993.         (set MuiVersion (getversion "LIBS:muimaster.library"))
  994.         (if(< MuiVersion Muimas)
  995.             (abort AbbruchAltesMui);begin;end
  996.         );endif
  997.     );endelse
  998. );endif
  999. (complete 5)
  1000. (if (= (exists ("envarc:%s.config"Name)) 1)
  1001.     (Update)
  1002.     (set fTotalNeu 1)
  1003. );endif
  1004. (set Wahl    (askoptions    (prompt Auswahl)
  1005.                                 (help Auswahlhilfe @askoptions-help)
  1006.                                 (choices    Auswahl1
  1007.                                             Auswahl2
  1008.                                 )
  1009.                                 (default $3)
  1010.                 )
  1011. )
  1012.  
  1013. (complete 10)
  1014. (if (IN Wahl 0);Programme
  1015.     (;begin
  1016.         (InstalliereProgramme)
  1017.     );end
  1018.     (;begelse
  1019.         (if(IN Wahl 1)
  1020.             (set Ende2 KeinProgramm);begin;end
  1021.             (abort NichtsInstalliert);begelse;endelse
  1022.         );endif
  1023.     );endelse
  1024. );endif
  1025. (if (IN Wahl 1);Dokumentation
  1026.     (;begin
  1027.             (SetDoks)
  1028.          (if (IN Doks 0);asc-Doks
  1029.                 (InstalliereDoks)
  1030.             );endif
  1031.          (if (IN Doks 1);guide
  1032.                 (InstalliereGuide);begin ;end
  1033.                 (message KeinGuide);begelse ;endelse
  1034.             );endif
  1035.          (if (IN Doks 2);dvi
  1036.                 (InstalliereDvi);begin ;end
  1037.             );endif
  1038.          (if (IN Doks 3);ps
  1039.                 (InstallierePS);begin ;end
  1040.             );endif
  1041.             (if (= Doks 0)
  1042.                 (set Ende1 KeineDoks);begin;end
  1043.             );endif
  1044.     );end
  1045.     (;begelse
  1046.       (set Ende1 KeineDoks)
  1047.     );endelse
  1048. );endif
  1049. (delete deCommand)
  1050. (run ("assign %s remove" TempName))
  1051. (Ende)
  1052.